package com.zhuiyun.project.api.physician.model;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import java.util.Date;

/**
 * @ClassName AppPhysician
 * @Description TODO
 * @Author kdj
 * @Date 2023/8/4 13:55
 **/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class AppPhysicianModel {
    /**
     * 主键id自增
     */
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @ApiModelProperty("id")
    private Integer id;
    /**
     * 用户唯一的id
     */
    @ApiModelProperty("用户id")
    private Integer userId;
    /**
     * 医师头像
     */
    @ApiModelProperty("医师头像")
    private Integer imageId;
    /**
     * 医师年龄
     */
    @ApiModelProperty("医师年龄")
    private Integer doctorAge;
    /**
     * 职称
     */
    @ApiModelProperty("昵称")
    private String title;
    /**
     * 地址
     */
    @ApiModelProperty("地址")
    private String address;
    /**
     * 是否在职 1在职 2不在职
     */
    @ApiModelProperty("是否在职")
    private Integer job;
    /**
     * 所属医院
     */
    @ApiModelProperty("所属医院名称")
    private String hospital;
    /**
     * 科室
     */
    @ApiModelProperty("科室")
    private String department;
    /**
     * 医师证书号
     */
    @ApiModelProperty("医师证书号")
    private String physicianNumber;
    /**
     * 从业年限
     */
    @ApiModelProperty("从业年限")
    private Integer life;
    /**
     * 医师个人照片
     */
    @ApiModelProperty("医师个人照片")
    private Integer personalPhotos;
    /**
     * 执业证书照片
     */
    @ApiModelProperty("执业证书照片")
    private Integer certificatePhoto;
    /**
     * 身份证号码
     */
    @ApiModelProperty("身份证号码")
    private String identityNumber;
    /**
     * 删除标志
     */
    @ApiModelProperty("删除标志")
    private Integer delFlag;
    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")//JsonFormat是出参格式化。
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")//DateTimeFormat 是入参格式化；
    private Date createTime;

    /**
     * 修改时间
     */
    @ApiModelProperty("修改时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")//JsonFormat是出参格式化。
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")//DateTimeFormat 是入参格式化；
    private Date updateTime;
    /**
     * 审核状态 0未处理，1已通过，2未通过
     */
    @ApiModelProperty("审核状态")
    private Integer auditStatus;
    /**
     * 医师id
     */
    @ApiModelProperty("医师id")
    private String doctorId;
    /**
     * 提交时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty("提交时间")
    private Date submitTime;
    /**
     * 审核时间
     */
    @ApiModelProperty("审核时间")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date auditTime;
    /**
     * 审核人员
     */
    @ApiModelProperty("审核人员")
    private String auditor;
    /**
     * 审核意见
     */
    @ApiModelProperty("审核人员")
    private String auditComment;

    /**
     * 下面的属性与user表相关
     */

    /**
     * 生日
     */
    @ApiModelProperty("生日")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")//JsonFormat是出参格式化。
    @DateTimeFormat(pattern = "yyyy-MM-dd")//DateTimeFormat 是入参格式化；
    private Date userBirthday;
    /**
     * 手机号
     */
    @ApiModelProperty("手机号")
    private String userPhone;

    /**
     * 性别
     */
    @ApiModelProperty("性别")
    private Integer userSex;
    /**
     * 是否在职
     */
    @ApiModelProperty("是否在职")
    private Boolean jobBoolean;
    /**
     * 用户名字
     */
    @ApiModelProperty("用户名字")
    private String userName;
}
